package com.beans.beans_life;

import org.springframework.beans.factory.BeanNameAware;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;

//@Component  //通过spring-config.xml 的bean已经存入spring中了  所以可以不用再使用注解存入spring
public class BeanLifeComponent implements BeanNameAware {
    @PostConstruct
    public void postConstruct() {
        System.out.println("执⾏ PostConstruct() 初始化");
    }

    // 通过spring-config.xml的 bean的 init-method方法来调用
    public void init() {
        System.out.println("执⾏ init-method 前置方法");
    }

    // 再添加个普通方法
    public void fun() {
        System.out.println("hello fun");
    }

    @PreDestroy
    public void preDestroy() {
        System.out.println("执⾏：preDestroy()");
    }

    public void setBeanName(String s) {
        System.out.println("先执行: aware 通知");
    }
}